#pragma once

#include <GLFW/glfw3.h>

class RenderWindow
{
public:
	RenderWindow(
		int width,
		int height,
		const char * windowTitle,
		int openglProfile = GLFW_OPENGL_ANY_PROFILE,
		int majorVersion = -1,
		int minorVersion = -1,
		bool fullScreen = false,
		bool currentContext = true
		);
	~RenderWindow();

	bool windowShouldClose();
	void swapBuffers();
	void getFrameBufferSize(int & width, int & height);
private:
	static void error_callback(int error, const char* description);
	static void key_callback(GLFWwindow* window, int key, int scancode, int action, int mods);
private:
	GLFWwindow* m_window;
};